/*
 * Created on 2005-3-17
 *
 */
package com.hd123.rumba.user;

import java.util.Date;

import com.hd123.rumba.exception.StringTooLongException;
import com.hd123.rumba.runtime.VersionedPersistent;

/**
 * @author caili
 *  
 */
public class Profile extends VersionedPersistent implements IProfile {
  private String email; // 电子邮件
  private String phoneHome; // 家庭电话
  private String phoneOffice; // 工作电话
  private String mobile; // 移动电话
  private String pager; // 寻呼机
  private String msn; // MSN
  private String qq; // QQ
  private String postcode; // 邮编
  private Date birthday; // 生日
  private Date wedding; // 结婚纪念日
  private String favoriteColor; // 喜好的颜色
  private String favoriteNumber; // 喜好的数字
  private Boolean married; // 已婚
  private String address1; // 地址一
  private String address2; // 地址二
  private String address3; // 地址三
  private String contactor; // 联系人
  private String phone; // 电话
  private String website; // 网址
  private String fax; // 传真
  private String position; //职位

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getAddress1()
   */
  public String getAddress1() {
    return address1;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setAddress1(java.lang.String)
   */
  public void setAddress1(String address1) throws StringTooLongException {
    if (address1 != null) {
      address1 = truncate(address1, LENGTH_ADDRESS1, "address1", CAPTION_ADDRESS1);
    }
    this.address1 = address1;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getAddress2()
   */
  public String getAddress2() {
    return address2;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setAddress2(java.lang.String)
   */
  public void setAddress2(String address2) {
    this.address2 = address2;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getAddress3()
   */
  public String getAddress3() {
    return address3;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setAddress3(java.lang.String)
   */
  public void setAddress3(String address3) {
    this.address3 = address3;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getBirthday()
   */
  public Date getBirthday() {
    return birthday;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setBirthday(java.util.Date)
   */
  public void setBirthday(Date birthday) {
    this.birthday = birthday;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getContactor()
   */
  public String getContactor() {
    return contactor;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setContactor(java.lang.String)
   */
  public void setContactor(String contactor) {
    this.contactor = contactor;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getEmail()
   */
  public String getEmail() {
    return email;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setEmail(java.lang.String)
   */
  public void setEmail(String email) {
    this.email = email;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getFavoriteColor()
   */
  public String getFavoriteColor() {
    return favoriteColor;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setFavoriteColor(java.lang.String)
   */
  public void setFavoriteColor(String favoriteColor) {
    this.favoriteColor = favoriteColor;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getFavoriteNumber()
   */
  public String getFavoriteNumber() {
    return favoriteNumber;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setFavoriteNumber(java.lang.String)
   */
  public void setFavoriteNumber(String favoriteNumber) {
    this.favoriteNumber = favoriteNumber;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getFax()
   */
  public String getFax() {
    return fax;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setFax(java.lang.String)
   */
  public void setFax(String fax) {
    this.fax = fax;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getMarried()
   */
  public Boolean getMarried() {
    return married;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setMarried(java.lang.Boolean)
   */
  public void setMarried(Boolean married) {
    this.married = married;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getMobile()
   */
  public String getMobile() {
    return mobile;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setMobile(java.lang.String)
   */
  public void setMobile(String mobile) {
    this.mobile = mobile;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getMsn()
   */
  public String getMsn() {
    return msn;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setMsn(java.lang.String)
   */
  public void setMsn(String msn) {
    this.msn = msn;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getPager()
   */
  public String getPager() {
    return pager;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setPager(java.lang.String)
   */
  public void setPager(String pager) {
    this.pager = pager;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getPhone()
   */
  public String getPhone() {
    return phone;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setPhone(java.lang.String)
   */
  public void setPhone(String phone) throws StringTooLongException {
    if (phone != null) {
      phone = truncate(phone, LENGTH_PHONE, "phone", CAPTION_PHONE);
    }
    this.phone = phone;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getPhoneHome()
   */
  public String getPhoneHome() {
    return phoneHome;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setPhoneHome(java.lang.String)
   */
  public void setPhoneHome(String phoneHome) {
    this.phoneHome = phoneHome;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getPhoneOffice()
   */
  public String getPhoneOffice() {
    return phoneOffice;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setPhoneOffice(java.lang.String)
   */
  public void setPhoneOffice(String phoneOffice) {
    this.phoneOffice = phoneOffice;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getPostcode()
   */
  public String getPostcode() {
    return postcode;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setPostcode(java.lang.String)
   */
  public void setPostcode(String postcode) {
    this.postcode = postcode;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getQq()
   */
  public String getQq() {
    return qq;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setQq(java.lang.String)
   */
  public void setQq(String qq) {
    this.qq = qq;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getWebsite()
   */
  public String getWebsite() {
    return website;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setWebsite(java.lang.String)
   */
  public void setWebsite(String website) {
    this.website = website;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getWedding()
   */
  public Date getWedding() {
    return wedding;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setWedding(java.util.Date)
   */
  public void setWedding(Date wedding) {
    this.wedding = wedding;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#getPosition()
   */
  public String getPosition() {
    return position;
  }

  /* (non-Javadoc)
   * @see com.hd123.rumba.user.IProfile#setPosition(java.lang.String)
   */
  public void setPosition(String position) {
    this.position = position;
  }
}
